{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Analyzing LinkedIn Company Posts with Graphs and Agents\n",
    "\n",
    "[txtai](https://github.com/neuml/txtai) is an all-in-one embeddings database for semantic search, LLM orchestration and language model workflows.\n",
    "\n",
    "This notebook will analyze [NeuML's LinkedIn company posts](https://hf.co/datasets/neuml/neuml-linkedin-202501) over the last 12 months as of January 2025. It will build an embeddings database with an associated graph and topic modeling. The most popular topics will be explored using graphs and vector search queries.\n",
    "\n",
    "From there we'll use Agents to investigate the dataset and find ways to increase engagement with our future posts using past history."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Install dependencies\n",
    "\n",
    "Install `txtai` and all dependencies."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "%%capture\n",
    "!pip install git+https://github.com/neuml/txtai#egg=txtai[agent,graph] datasets autoawq autoawq-kernels"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# LinkedIn Company Posts\n",
    "\n",
    "The next section builds the LinkedIn company posts dataset for NeuML. First, it downloads the company posts dataset then it creates an embeddings database.\n",
    "\n",
    "There is also custom logic to create topic names for the generated topic clusters vs the standard naming method.\n",
    "\n",
    "_If you'd like to instead use your own company posts, see these [steps on the dataset page](https://hf.co/datasets/NeuML/neuml-linkedin-202501)._"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from datasets import load_dataset\n",
    "from tqdm.auto import tqdm\n",
    "from txtai import Embeddings, LLM\n",
    "\n",
    "def title(text):\n",
    "    prompt = f\"\"\"\n",
    "Create a simple, concise topic for the following text. Only return the topic name.\n",
    "\n",
    "Text:\n",
    "{text}\n",
    "\"\"\"\n",
    "\n",
    "    return llm([{\"role\": \"user\", \"content\": prompt}], maxlength=2048)\n",
    "\n",
    "def data():\n",
    "    for x in posts:\n",
    "        x[\"url\"] = x.pop(\"Post link\")\n",
    "        x[\"text\"] = x.pop(\"Post title\")\n",
    "        x[\"id\"] = title(x[\"text\"])\n",
    "        yield {k.lower().replace(\" \", \"\"): v for k, v in x.items()}\n",
    "\n",
    "posts = load_dataset(\"neuml/neuml-linkedin-202501\", split=\"train\")\n",
    "\n",
    "llm = LLM(\"hugging-quants/Meta-Llama-3.1-8B-Instruct-AWQ-INT4\")\n",
    "\n",
    "embeddings = Embeddings(\n",
    "    autoid=\"uuid5\",\n",
    "    path=\"intfloat/e5-large\",\n",
    "    instructions={\"query\": \"query: \", \"data\": \"passage: \"},\n",
    "    content=True,\n",
    "    functions = [\n",
    "        {\"name\": \"graph\", \"function\": \"graph.attribute\"}\n",
    "    ],\n",
    "    expressions = [\n",
    "        {\"name\": \"topic\", \"expression\": \"graph(indexid, 'topic')\"}\n",
    "    ],\n",
    "    graph={\n",
    "        \"approximate\": False,\n",
    "        \"topics\": {\"resolution\": 6}\n",
    "    },\n",
    ")\n",
    "embeddings.index(tqdm(data(), total=len(posts)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now that the embeddings database is built, let's generate the topic names using an LLM."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "def topic(text):\n",
    "    prompt = f\"\"\"\n",
    "Create a simple, concise topic for the following text. Only return the topic name.\n",
    "\n",
    "Text:\n",
    "{text}\"\"\"\n",
    "\n",
    "    return llm([{\"role\": \"user\", \"content\": prompt}], maxlength=5000)\n",
    "\n",
    "topics = {}\n",
    "for name, nodes in tqdm(embeddings.graph.topics.items()):\n",
    "    name = topic(\"\\n\".join(embeddings.graph.attribute(x, \"text\") for x in nodes))\n",
    "    topics[name] = nodes\n",
    "\n",
    "    # Set topic on each node\n",
    "    for node in nodes:\n",
    "        embeddings.graph.addattribute(node, \"topic\", name)\n",
    "\n",
    "embeddings.graph.topics = topics"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Both of the sections above should run within a minute with a modern GPU. Building the embeddings database and generating the topics can optionally be skipped using the following model from the Hugging Face Hub.\n",
    "\n",
    "```python\n",
    "embeddings = Embeddings()\n",
    "embeddings.load(provider=\"huggingface-hub\", container=\"neuml/txtai-neuml-linkedin\")\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Popular topics\n",
    "\n",
    "Now that we have an embeddings database, graph and topics, let's explore the data! The next section shows the Top 5 posts for each of the Top 5 most popular topics."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/markdown": [
       "#### Graph RAG\n",
       "1. _06/09/2024 - 2567 views_ - Knowledge Graphs (KGs) are a 🔥 topic now. But how do you build them? Check out this article that uses embeddings models to automatically build a semantic graph. And it's multimodal!  https://lnkd.in/eMsAXarn \n",
       "2. _03/10/2024 - 2356 views_ - One powerful feature of txtai is that graphs can be automatically created using semantic similarity. Did you know that relationships can also be manually loaded using techniques such as relationship extraction with LLMs?  Check out this article on building knowledge graphs with LLMs and txtai.  https://lnkd.in/dBy_H4C2\n",
       "3. _06/16/2024 - 2141 views_ - Want to use LLMs to automatically extraction entity-relationship models? And  load them into a knowledge graph? Then check out this article.  https://lnkd.in/dBy_H4C2\n",
       "4. _03/05/2024 - 1803 views_ - Curious about Graph RAG? Did you know that txtai has an ready-to-use Embeddings graph database for popular Wikipedia articles on the HF Hub?  https://lnkd.in/e3fPr6fd\n",
       "5. _03/05/2024 - 1803 views_ - 📈 Let's talk about Graph RAG. We've been looking at graph-based approaches for context generation since 2022. The best use case we've seen for Graph RAG is for more complex questions and research. For example, think of a problem as a road trip with multiple stops. A graph path traversal is a great way to pick up various concepts as context, concepts which may not be directly related and not picked up by a simple keyword/vector search.  The attached image shows two graph path traversal examples. The first shows the path between a squirrel and the Red Sox winning the world series. The 2nd shows an image path from a person parachuting and someone holding a french horn. Note the progression of both the text and images along the way. There is also another example of traversing history from the end of the Roman Empire to the Norman Conquest of England.  For problems like this, graphs do a great job. If the answer is a simple retrieval of a single entry, Graph RAG doesn't add much value. Like all things, Graph RAG isn't the be-all and end-all.  Read more in the articles below.  Semantic Graph Intro: https://lnkd.in/eMsAXarn Graph RAG: https://lnkd.in/d-BSjuj7\n",
       "#### Vector Embeddings Innovations\n",
       "1. _02/24/2024 - 7202 views_ - 🚀 Excited to release an updated version of PubMedBERT Embeddings with Matryoshka Representation Learning support! With this model, dynamic embeddings sizes of 64, 128, 256, 384 and 512 can be used in addition to the full size of 768. It's a great way to save space with a relatively low level of accuracy tradeoff.  Thank you to Tom Aarsen, Philipp Schmid and the Hugging Face team for adding this feature to Sentence Transformers!  https://lnkd.in/edNYMyrF\n",
       "2. _10/21/2024 - 4042 views_ - Running an embeddings database with limited compute? Model2Vec is a technique to turn any sentence transformer into a really small static model.  The next release of txtai will have support for this new vectorization method!  Example txtai code: https://lnkd.in/eFSdT7B5 GitHub Project: https://lnkd.in/eEpWxZx8 Blogpost: https://lnkd.in/e4iPg4wi\n",
       "3. _01/03/2025 - 2850 views_ - 🧬⚕️🔬 What if we said you can have a competitive 8 million parameter model that can index as fast as BM25? Or a 100K parameter 200KB model that retains knowledge?  We're excited to release static PubMedBERT Embeddings models! These are a set of static models distilled with the great Model2Vec library by The Minish Lab Thank you to Stéphan Tulkens and Thomas van Dongen for creating Model2Vec!  https://lnkd.in/esgtC_2X\n",
       "4. _03/17/2024 - 2651 views_ - We're seeing a lot of progress with methods to improve the efficiency of vector embeddings generation. For example, vector models trained with Matryoshka Representation Learning, push the most important information to the front of the vector, enabling us to only keep a portion of an embeddings vector.  Another method, quantization, compresses the number of values that can be represented by each bucket in an embeddings vector. With binary quantization, the values can even be reduced down to a single bit.  While all this is exciting, how do we know that these methods will work well enough for our requirements? We have to test it of course! The BEIR evaluation framework has a number of sources and it's easy to add new custom sources to test. Check out this article for a full example on this topic.  https://lnkd.in/db5Jx_fE\n",
       "5. _03/01/2024 - 1722 views_ - Would you trade 1% of accuracy to only have to store 1% of the data?  Exciting to see the innovation happening in the vector space and we're not talking about 1.58-bit LLMs.  With Matryoshka Embeddings, we can drastically reduce vector dimensionality while maintaining a strong level of accuracy. Check out this example that combines Matryoshka Embeddings with Faiss 4-bit scalar quantization 🚀\n",
       "#### Text Summarization with txtai\n",
       "1. _05/20/2024 - 2703 views_ - LLMs can translate and summarize but that doesn't mean they should. Check out this simple summarization method that's still quite popular.  https://lnkd.in/dM6XB_Rc \n",
       "2. _04/01/2024 - 2605 views_ - 🚀 We're excited to announce a new 500M parameter model 🌌 Space Time LLM.   Recent breakthroughs in LLMs have resulted in an uncanny and game changing ability to predict future outcomes. Impressive advances in quantization and compression such as 1-bit LLMs have contributed to this phenomenal breakthrough in predictive capabilities. This model redefines our understanding of what and how LLMs learn.  Check out this model and see what you can predict today!  https://lnkd.in/exdy4R5G \n",
       "3. _07/09/2024 - 1884 views_ - 🤔 Machine translation just ask a LLM to do it?  While LLMs can translate that doesn't mean they should. What if we could utilize smaller models that were trained to translate between specific languages? What if there was a pipeline that automatically loads models based on the source to target language?   🚀 Enter txtai's translation pipeline! The Translation pipeline automatically detects languages and searches the Hugging Face Hub for the best specialized model to perform the translation. These specialized models are often smaller than LLMs and much faster.   Link to code: https://lnkd.in/eefCwRDu\n",
       "4. _07/11/2024 - 1710 views_ - We often hear one say they have a LLM and they want to solve a problem. LLMs aren't always the best tool for the job. Let's take text classification using a sentiment dataset.  Running LLM prompts for this dataset only leads to 58% accuracy! Training with a 4.4M parameter model has 91% accuracy. BERT is 93%. Sure we can fine-tune the LLM for this task but why spend an hour vs 8 minutes?  Be willing to accept the simpler solution.  Link to code: https://lnkd.in/d38xBm6X\n",
       "5. _07/07/2024 - 1326 views_ - 🗎 Want to summarize webpages, word documents, PDFs and more? Did you know there are models pre-built for summarization that pre-date the latest LLMs? And that they do a decent job and are faster?   txtai supports pre-trained summarization models and LLMs for summarization. Either can be run as Python workflows or FastAPI services.  Link to code: https://lnkd.in/emg4QUfm \n",
       "#### txtai Vector Search Performance\n",
       "1. _07/07/2024 - 2393 views_ - ✨ Let's build on our previous BM25 post and take tokenization into account. We'll compare LangChain's BM25 retriever, the recently released bm25s library (built with Scipy sparse matrices) and txtai. We'll use the same tokenization method for all 3, the Unicode Text Segmentation algorithm (UAX 29). Keep in mind that this is relevant to those using hybrid search (vector + keyword).  1.6M ArXiv abstracts were evaluated. txtai's index time was slower but search times were significantly faster. txtai used almost 6x less RAM.  Link to code: https://lnkd.in/ekSxN9pJ\n",
       "2. _07/05/2024 - 2096 views_ - ⚡ LangChain and LlamaIndex both use the Rank-BM25 library to provide in-line BM25 document retrieval. Rank-BM25 is a great way to quickly stand up a BM25 search index for a small number of documents. But it doesn't scale as it's built to run in memory.  txtai has it's own BM25 implementation in Python. Term vectors are built harnessing the native performance of the Python arrays package. These term vectors are stored in a SQLite database. LRU caching stores frequently used vectors in memory. This combination of factors enables a highly performant index.  For this comparison, 2.3M ArXiv abstracts were used. LangChain ran out of memory (32 GB of RAM). The test was scaled to 1.6M abstracts. txtai had 2x slower index times but 13x faster search times than LangChain. LangChain used 25 GB of RAM, txtai used 3.8 GB of RAM.  Link to code: https://lnkd.in/eD7qn6qn\n",
       "3. _07/05/2024 - 1673 views_ - 💥⚾ BM25 continues to be a heavy hitter in the information retrieval space. Did you know that txtai has a BM25 component built for speed💨?   BM25 term vectors are built harnessing the native performance of the Python arrays package. These term vectors are stored in a SQLite database. LRU caching stores frequently used vectors in memory. This combination of factors enables a highly performant index.   https://lnkd.in/eA3ui6cQ\n",
       "4. _07/01/2024 - 1095 views_ - ⚡ Faiss is a great vector indexing library. It has so many features past just a flat index. txtai automatically creates a performant Faiss index scaled by the size of the incoming data. The index type can also be fully customized with configuration. This shows the power of a full-featured and long-standing integration.  See how this compares to LlamaIndex: https://lnkd.in/eWqU5z3U\n",
       "5. _07/03/2024 - 747 views_ - 💥 Hnswlib is a great vector indexing library. It's integrated into a number of vector databases.  txtai utilizes the same core pipeline for generating embeddings and storing vectors regardless of the end components. There has been a careful focus in building a highly performant and efficient vector database implementation that runs great locally.  txtai uses mmap-ing and other techniques to ensure that memory limits are respected. Streaming vector generation and offloading those vectors during index creation allows txtai to build large local indexes whereas other implementations run out of memory.   See how this compares to Chroma DB (txtai is 3x faster for the same dataset): https://lnkd.in/eY_nMA85\n",
       "#### txtai Community Updates\n",
       "1. _02/21/2024 - 1322 views_ - 🕒 The countdown to txtai 7.0 is on. In the meantime, checkout this notebook with the code showing how all these graphs you've seen work!  https://lnkd.in/dBy_H4C2\n",
       "2. _04/09/2024 - 1046 views_ - Check out this interesting article that uses txtai to solve crossword puzzles.  https://lnkd.in/ewdqZWzi\n",
       "3. _03/22/2024 - 908 views_ - 🔥 Excellent tutorial on building a product search engine with txtai from NeuralNine!  https://lnkd.in/e8xsvbm2\n",
       "4. _03/24/2024 - 628 views_ - Nice video covering how to build an AI Search engine with txtai.  https://lnkd.in/e2NGemzv  Check out the NeuML YouTube channel for links to this video and more: https://lnkd.in/e9cJQ79k\n",
       "5. _02/28/2024 - 605 views_ - ICYMI: Check out what's new in txtai 7.0  https://lnkd.in/efuQipp9 \n"
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from IPython.display import display, Markdown\n",
    "\n",
    "# Get top 5 topics by popularity\n",
    "popular = embeddings.search(\"SELECT topic FROM txtai GROUP BY topic ORDER BY sum(impressions) DESC LIMIT 5\")\n",
    "\n",
    "output = \"\"\n",
    "for topic in popular:\n",
    "    topic = topic[\"topic\"]\n",
    "    output += f\"#### {topic}\\n\"\n",
    "    results = embeddings.search(\n",
    "        \"SELECT text, createddate, impressions FROM txtai WHERE topic = :topic ORDER BY impressions DESC LIMIT 5\",\n",
    "        parameters={\"topic\": topic}\n",
    "    )\n",
    "\n",
    "    for i, x in enumerate(results):\n",
    "        text = x[\"text\"].replace(\"\\n\", \" \")\n",
    "        output += f\"{i + 1}. _{x['createddate']} - {x['impressions']} views_ - {text}\\n\"\n",
    "\n",
    "display(Markdown(output))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "And lets also look at the top 5 most popular posts overall."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/markdown": [
       "1. _02/24/2024 - 7202 views_ - 🚀 Excited to release an updated version of PubMedBERT Embeddings with Matryoshka Representation Learning support! With this model, dynamic embeddings sizes of 64, 128, 256, 384 and 512 can be used in addition to the full size of 768. It's a great way to save space with a relatively low level of accuracy tradeoff.  Thank you to Tom Aarsen, Philipp Schmid and the Hugging Face team for adding this feature to Sentence Transformers!  https://lnkd.in/edNYMyrF\n",
       "2. _12/28/2024 - 5229 views_ - 💥 Surprise! One last release in 2024.   🧬⚕️🔬 This time it's paperai and paperetl 2.3. paperai is a semantic search and workflow application for medical/scientific papers. paperetl is a companion library for parsing papers.  This update enables the latest txtai features and fixes some long standing bugs. More to come in 2025 and maybe one more thing in 2024!  paperai: https://lnkd.in/egFSSP4 paperetl: https://lnkd.in/ecuuVG2\n",
       "3. _10/21/2024 - 4042 views_ - Running an embeddings database with limited compute? Model2Vec is a technique to turn any sentence transformer into a really small static model.  The next release of txtai will have support for this new vectorization method!  Example txtai code: https://lnkd.in/eFSdT7B5 GitHub Project: https://lnkd.in/eEpWxZx8 Blogpost: https://lnkd.in/e4iPg4wi\n",
       "4. _01/03/2025 - 2850 views_ - 🧬⚕️🔬 What if we said you can have a competitive 8 million parameter model that can index as fast as BM25? Or a 100K parameter 200KB model that retains knowledge?  We're excited to release static PubMedBERT Embeddings models! These are a set of static models distilled with the great Model2Vec library by The Minish Lab Thank you to Stéphan Tulkens and Thomas van Dongen for creating Model2Vec!  https://lnkd.in/esgtC_2X\n",
       "5. _05/20/2024 - 2703 views_ - LLMs can translate and summarize but that doesn't mean they should. Check out this simple summarization method that's still quite popular.  https://lnkd.in/dM6XB_Rc \n"
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "output = \"\"\n",
    "for i, x in enumerate(embeddings.search(\"SELECT id, text, createddate, impressions FROM txtai ORDER BY impressions DESC\", 5)):\n",
    "    text = x[\"text\"].replace(\"\\n\", \" \")\n",
    "    output += f\"{i + 1}. _{x['createddate']} - {x['impressions']} views_ - {text}\\n\"\n",
    "\n",
    "display(Markdown(output))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A couple themes are shown in the data. Posts covering `Graph RAG`, `Vector Embeddings Innovations` and `medical literature related models` all had high engagement.\n",
    "\n",
    "Let's plot a subgraph of the nodes related to `medical literature`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ZEUiET377LO67bbbwvPU19fry1/+sg455BBt2bJF99xzjyTJj8RUitV0ee7bPjJFdTFLr6zP6axDRitmmXpk8RZd9ZtV8oKyJOmYPWt16eF7aP/RjvyytGB1Vl95ZqWWNxclSZPqbP3zi40664llOueQ0Tpoj4SWNbm6/Ncr9cLKTHiu/UY5unb2BB02KaWcF+ilI67Rd269OQxpKl9r3/d17LHH6u2339Yll1yiqVOn6txzz9VBBx2kfD6vv/3tb7r99tvV2tqqK664QjNnztTMmTN10kknSZLmzp27C6+07lW+7lOmTNHhhx+uTCajBx54QI8//nh4mwkTJujLX/6y9t9/f61Zs0a33XbbNsfZ3uvkuOOO0xlnnCG1VWpI0vXXX6/58+crmUzqi1/8oo444ghFo1G98cYb+s53vqO33nqrVx8nAAAAAAAAMJgRRGC3HHfccXr66ad13nnnafr06brkkku0YcMG/eIXv5Darpy/5557tHLlStXX1+u8887TFVdcoauuuqrDcb7whS/otttu05YtW3TWWWfpm9/8pk499VT5vq/x48dr3rx5+v73v6958+apvr5eF154oS688ELNmzcvPMbJJ5+s++67Tz/84Q/Dz+VyOd1www3atGmT9tprL1122WXK5/P6yU9+0qPHZxiGNm7cqP/+7/9Wa2urGhsbdckll2jz5s36/e9/H95u5syZ2rx5s770pS9pwoQJuuaaa7R06dLwebjiiis0atQofelLX5Lv+7rgggtUX18vL1a/3fO/b0qNCqVAH3/gTU2us3Xrh6eoKe/rf/64RpKUtE19d8EGLdqQV9I2deVR43TfnGl6/z2vqdzuONfOnqCrf7tKb2wq6IuHjtEDJ03Tu767UE0FX7UxS49/eh/9+OXN+q/frpITNXX9rLH62te+1qFt1XHHHacnn3xSF1xwwdZzJ5P63//9Xz399NO6/fbbFYvFdM4554T3u+222zRx4kQtX748DF5aWlq0xx69O4PiU5/6lO6//37de++9OvTQQ3X++edr5cqV+vvf/y7DMPT1r39dTU1NOu+885RMJrtsFbW918mzzz6rPffcU+95z3vC5yObzUqS/vu//1uu6+qKK65QNpvVxz72MX3729/WqaeeqnQ63auPEwAAAAAAABisaM2E3bJhwwbdfvvtWrlypZ555hn97Gc/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gQceuM3zKklNTU3auHGjxo0bpzVr1nT4s27duh0eGxgK+JcnAADAMFCpkmhqalJTU5M8z1MikdCIESNUW1sr27arvUQAAADspPXr12v//ffX2LFjVVtbK8MwNGrUKF188cX63ve+p4ULF2revHn6zGc+o/333z+837p16zRr1iw1NDQolUpJbfMMjjrqKE2bNk177723rrnmGhmGoUgkokQioVQqJcMwFI/HNXLkSI0aNUojR45UQ0OD6urqlEqlFIlEFIlENDZhaWxNVPuPdnT2IaP15Gf21cL1ed324vqt52r15JYCnX3IGE2ps3X83nW67PCOoceqlqKCclnH7V2nkfGIklFTzQVfm3MlnT5zlPasj+moKSl945iOg7G/eOgYzdm/QfuMiGlaQ0yf2K9B6zKemguBXnz1db399tu6+uqrtc8++2i//fbTVVddpX/+859hq6WXXnpJ06dP1wc/+EFNmDBBZ5xxhqZOnbrDr8Xjjz+uZDKpa665Rvvuu68mTJigY489VpMmTZIk3XvvvTrllFM0Z84cTZw4UXvuuaeOP/54ffKTn+yFVwIw8NGaCQAAYJgplUpKp9PKZDKKxWKKx+Oqq6uT7/vhLAlKxAEAAAa+hx56SFdeeaXuvfdeOY6jT3/607rsssv0+uuv62c/+5kkacGCBXryySd19dVX65xzzlGxWNRdd92lL3zhC/rIRz6izZs36wtf+ILuv/9+nX/++br99tuVTqf1xBNPqLa2Nmz1Wfn9MAgC5fN5BUEQ/vF9P7zwZfLkyfrNDeepFJTV6vp6Y1NBN/95nX7w0qawymFzvqTzf7FC//X+8Trn3aP1yrqcrnl2tR44aVr42NZmPF3/3Fp99egJuvUjU/TQwi06/xcrdPYTy3TdsRP1/Fn7a+mWgq76zSr9/DP7hvfLFH1dcNhY7dUQUxBIL63Lau5Pl6psWnLSa/Rf//VfuvDCC/V///d/CoJACxYs0C233BLef8GCBfrRj36kL3zhC7JtW7/85S/161//Wnvttdd2vxatra265JJLdO655+rmm29WEARaunSpFi5cKEl6+umn5bquPvWpT+kLX/iCCoWCli1bpkceeaSXXxXAwGTMnDmTiYUAAADDXCQSCQdcq63HbaFQ2G6vWwAAAAwMpmnKsiyZprndP+2Vy+UOYUL7UKH9x+0HTPeUZ6f0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eZ6nDRs26Ne//rV+/OMfD7gr3H3f1/Xf+Lreu+8ESVKhFGhFs6u7/75R97y0qc/Oe9UzK2V0NQ0i8LV58hGauPjR3T7Hs88+u92///GPf6wHHnig24qG9roKGCqDnpubm8PPs4kCAL3DNM2w8iEajapcLst1XWWzWRWLxWovr08kEgklEgkFQaDW1la5rlvtJfW5eDwuwzCUy+WqvRQAAxxBBAAAANCFF198UTfccINs29Z73/teXXTRRSqVSnrggQeqtqZK/+zOSnZSP/znJl3/3BrFI6Y+deBI3XjcZDUXfD32WtNOnydqGvKC7W/Ip91uAhnTUuuYRmkngwjDMLYJEj772c+G/3/UUUdp7ty5uvjii8P7FAoFJZPJDtUK3bVI6ipgqNx2qF2NCwDVYhhGh/BBkorF4pDflLdtW6lUSqZpKp/PD6tZCfF4nGoIAD1CEAEAAAB0wfM8NTVt3cR/8skndeSRR+rwww/XAw88oE9+8pM6/vjjNW7cOKXTaf35z3/WHXfcEQ6gPO6443T++efr+uuv17nnnqsxY8bo5Zdf1o033qiNGzeG5zjiiCN02mmnaerUqdq0aZPmz5/foeri2Wef1U033aT3vOc9mjVrlh566CH98Ic/7LhOO6WyaSnvFbUhu7X1w7zn1+rEAxp0/D51euy1Jn3t6PH68L71Gl9ja0PW0yOLtujGP61VqS1LuPzIcfrwPnW6++8bdcnhe2hSna3RN7ykj02v1+VHjNOeDTHlS4FeXZ/TZx99Wzkv2KY10xOn7KPFG/IqlMo69eCDFFzwmH7+5BO67777wjBh8uTJ+tKXvqR99tlH69at0913362vf/3rmjdvnv72t791eFxBECiXy4VBQmtrq8rlslauXBkGC6eccoo++tGPqq6uTu+8846+973vacGCBeEx9txzT51//vmaMWOGCoWCnnvuOd1+++1DclAoAFSLYRiybVuO44Thg+d5SqfTKhaLQ3qD2rIspVIp2bYdVnt0dcHAUEU1BICdQRABAAAA9ECxWFRdXZ3Utkl+6623au3atRo/frwuvvhinXvuubr55pvD28diMX32s5/Vddddp1KppIsvvljXXHONLrjgAknSgQceqCuvvFK33XabXnnlFY0fP16XXnqpJOm+++4Lj3P66afrrrvu0u23397l5ka+dmKX6y2UAtnW1tZJ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WrQImqZhhx12QDQaheM4+NCHPoSvfOUruOWWW/Diiy/iAx/4AM4++2ysX78eL774IkzTBAAkEgls3rwZvu8jEokAPaFTMplENrv1OZ988sm46aabkEqlsHLlSpx22mn41Kc+heuvvx6vvPIKOjs7MXPmzK3PRVFw1VVX4dVXX8U555wD13Vx4okn4qqrrsKpp57KMLhBNGObpeEIhUKIRCLwfR/xeByFQmHM9ykBaNu4BG0blyBrTcWWmfsgMXkeikZ06w08FxLee518SEFQoeYTiG5cggkrn4aZWjfmYyEialYMIoiIiIjGOR/A6l0+t7X/cS1DCGxt0+QpOtbs8jls9+KtI9odWFr1INpFiMGYrHqontKKiGZRicHIpW1pBjKS4GA4368nRVFg2zZUVUUqlQoWo0uJwe77778//vKXv0BRFOi6Dtd18dOf/rTstocddhj+/ve/w/M8rFixAuvWrcPHPvYxPPzwwwCAGTNmYNWqVWU/c9ZZZ+FTn/oU0LMofswxxwx6zMViEY8++igOO+wwLFmyBIcddhgee+yxPp8FRxxxBDZt2oRrr70WALBq1SpMnDgRXz7jTFz8fy8jbGj4wu4TcMafV+CJd5Nbj+WBFXjlrN2C+5ge1XD87hOwx/VLsD61tS3Nouc24sDtozh+twn4/hNrh/1a//Izs+H6PkxVhiJLeDeWx32vdQMAPrtTO2TNwC233AL0nGM33HADbrvtNuy+++5Yvnw5IpEInn76abz11lvwPA9Lly4NKlw++clP4uGHH8Zdd90FAFi2bBnmzJmDI444As8880ywQOu67pDnnAgzLMuC4zg46qijcO211wbv4dq1a4MqlwULFkCWZfzoRz8Kfv7KK6/En//8Z+y5557497//PezXhypDhIalwYNosyQqBkXw0KzE55amachms0in01X5LDVT67bObnn1DyjqFjLRGcjZ0+CqJnxZgeS5UIpZhJJrEU6shsr2S0REAIMIIiIiIkpMnre173G9yAoSU3ZDYvI8tG1cMuDNxCKKCB8URQn6VIt2MaNtu0DDV4uKiNHOMxhNu6KBAoLhVBj0vl2rMAwDlmXB8zzEYrFBQz3f9/Hiiy/illtugaZpOOSQQ+C6Lp544ongNpFIBPvttx/OOeec4GsiMBCL2P359a9/jT/+8Y/Yf//98YUvfGFYx/7QQw/huuuuw4033oiPfexjOOuss4L2MsLMmTOxdOnSsq8tWbIEkZCB6VENbWEDhirjP+veay0Vy20dJC3sMsmEKkt49iu7lN2Pocjoyo6sbc0lf1uNx1cksV27jssPnIGLHluNWG7rfcybbGLGxHbcdtttZT+jaRra2tqwdu1aPPTQQ7jsssvw73//G//973+xePFidHV1Bc/1gQce6PNcFy5cOKJjBIDXX389qDbbbrvtoOs6/vvf//Z72zlz5mD69Ol48MEHy76u6zqmTZs24semkWulNkvDEQ6HEQ6Hg2qtWgUqaiGF6ObXEN38Wk0ej4iomTGIICIiIhrnNs1aAHgeUM8d7p6LTbM+3ieIEDusxawHSZKClhGFQqGpd242M8/zyioiKjEUeaTtikbTmqhS7YpalSRJsCwLoVAIuVwOqVRqWK9RNpvFa6+9hvb2dvzyl7/Ej3/8Yxx22GHBIvRBBx0EwzBw/fXXl/2coijYbrvtsGbNGqxduxYzZ86EruvBseRyOeTz+WDWhJhTIc4R8btlWcHv77zzDtasWYNLL70Ua9asQSwWw+zZswEA7e3tcBwHhmGgWCxi4sSJwf10dHSIV2FYr1VEU1D0fBx462twe+WfaWdkC7sb0w7eieXxTiyPrz34Ln579A7Y56ZXsTlTRESXsXTlBlx1yQV9fi4ejwMArrrqKtx777348Ic/jI9//OM45ZRTcMEFFwxrtkZ/waKq9r9MkM1mg9Y9+fzgradM08Qbb7yB73//+wMeN1VW6VBpTdP6tFkSQ6VbLbBXVRW2bUNRFGQyGWQymXofEhERDYBBBBERETW8PfbYA9dccw0OP/xwpNNpHHLIITj77LPx6U9/uir3X+ufr6esNXXr0MV6kxVkOmYja22DtkJXED5ss802WLRoEc477zy8/vrrFa16uPrqq/Hmm29i0aJFA97mrrvuwj333IM//OEPAIDFixfjkksuwT//+c+KHEO9DBUEnHDCCfjIRz6Cc889d8DbRCIRRCIRSJKESZMmlQ28LTXaVkUMDoav98L8SH4X/60oCgzDgCRJyOfzwayAoe5DhIRtbW3BYOv7778fp512Gl588UU4joPPfOYz+POf/4x//OMfZcd96qmn4sgjj8RvfvMbPPfcc/jIRz6CAw88sKxtj+/7wXGZphmcA6W/i1BMHNNjjz2GM888E9dffz2KxWJQ0VEoFJDL5bBixQrss88+QdsW3/ex3XbbIZXNY20ij+68j4Lr4QNTI1iTiAEA2gwFczoMPN0ziPqVDRmosoSJYRXPrK7c5/5/12Xw0voMvr7PNvh/j63Gy+sz+OyO2yAWiw26wPrmm2/izTffxG9+8xtcd911OOigg7Bs2TKsXLkS8+bNK6s8mTdvXnCdxmJbn9+ECRPw5ptvAgB22GGHAR9HVESsXr0auVwO8+fP71P1AADLly/HggULhjxuGp3x0GZpKOLvIdM04TgOuru7W6a6g4ioVTGIICIiojG58MILceihh+L+++/H1VdfXfa9c889F0ceeST++te/4sorr6zYYy5evBjPPvtsxe5vOHovSJdaunQpFi5cGIQQlQ5KhmO0C+RbZu4DeG4wUHG0PjrTwv3Hz+33ezv/7GVsTA89r0HyXKTnHoiZqx6B67rI5/NIJBJAT394MdS2nhYuXIhUqva9nksDgF//+tfYZptt8IMf/ABPPPFE2feuv/56bLfddrj22muxePHiUVcciOoTTdP6hAee58EwDHieh1wuB9/3EQqFAADJZBJdXV0tFRyMZDG/959r9ftolS7mi/vyPA+KokBRlH4X/Uvf19LzQoQXsizjX//6F0488UQsWLAA//3vf7H99tvjBz/4AVatWlX2s48++ihOOOEEXH/99bj//vux55574txzz8VvfvMbPP/88+jq6sI222yDD37wgygWi9iyZUu/z8MwDKDn/EskErjnnnvw17/+FalUCp7nBQvhYrf0Pffcg8985jP48pe/jD/+8Y+YOXMmTjjhBNz2yDPwEEba8XDnS1tw6QHT0Z0rYlO6iEs+Ng2lp/Nb3XncvaQL1x8+C9/5+xq8vCGDiWEV+29nY+mmLB59KzHq9+UX/96I2xduj589swF3L+nCufOj+P73v49bbrkFmzZtwpQpU7D//vvjrrvugqqqOPzww/H0009jy5Yt2HbbbTFjxgw88sgjAIDf/va3+O53v4vly5fjP//5D/bZZx/st99+OP/884GecGbp0qU47rjjsG7dOnR0dODUU08d8NjEYrfjOLjrrrtw+umno1gsYsmSJWhra8Ps2bPx4IMP4rHHHsPnP//5AY978+bNo359xqPSNkuqqgZVK63aZmkouq7DsixIkoRkMtkQ/39ARERDYxBBREREY7Zh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+tSnsHnzZhx33HF4/vnncccdd+D000+Hrut46KGH8Mgjj2D77bcHAISSa4F+diWvTzk47Ndv4Lsfn457jt0BuiJjdbyAv70THzSEAIDnTt+1z9cOuf01/Hvt4OdFQFYgeX13QN544404/vjjgyHQF198cTBbY8uWLfja176Gr3zlK/jRj34ETdOwYcMGPPfcc8Fixi9+8QuYponLL78c2WwWv//97xGJRMoe48orr8Q3vvENXHPNNejq6sLNN9+MU045ZXjHPYAlS5bg6quvxhe/+EWccsopeP7553H33Xfjs5/9LNAT2EWjUVx00UXo6OhAPB7Hk08+iVtuuWXYj9F7Fktvl1xyCc455xxce+218DwPzz//PH76058G31+8eDGmTZsWnCdPPPEE7r//fnzoQx8KbvPggw8in8/j85//fBCErV69GnffffeoXheqHlmWYds2NE1DJpMZ8jO51nqHEaXt0qqld/ulVCrVJ7zTNA2WZUFRFGQyGUx+8S5073shPMkApBpWR/geZLeA6a/eg/rVjPSv1YOI3m2WFEWBJElss1RFoVAo+Ls4kUgM2mqTiIian7TnnnsyuiciIiIahxzdwrIFl9b7MPrY5R//CzWfrPdhVM3555+PmTNn4txzz633oYyaJElBmNbfXBOqD13XYds2fN9HMpkc0+ydalNVFW1tbUEwUWmyLMM0TYRCIUiShEKhgGw22+c1ET3pTdOE4zhIJpNBO5jYlN2xcs8vVvzYhjLzxdvQvuHlmj/uUMTw4FqER7UgWkmWBg/oCctEpUOxWGR7oCpQFAWWZUHXdeRyOaRSKVaVEBGNA6yIICIiIhqntEIKaj6JojG2OQiVpDspbGMbKJpKMBC62XefHnPMMfjPf/6DbDaLvfbaC4cccgiuueaaeh/WmPi+D9/3+8xCofqxLAumaSKfzyOZTDb8ol5/bZoqYTjtlwTDMGBZFgCUDa0X2je8DOe1+7BupyMrcmzDMfW1+xoyhECTV0T0brOkqipkWYbfM5OIbZZqR7SN8zwPsVisoQNTIiKqLAYRRERERONYdOMr6Jq+V336oPfmubA3vIJkMgld12GaJiKRCDzPC0IJx3GabiFs5513xrHHHotwOIx169bhZz/7WTDfopkxiGgMiqIgGo1CUZR+F9MbWaXCCEmSYBjGkO2XBFmWYVnWsHrST3r3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y1j7jjeq5cuXY9q0adh///3x2GOPAQD2339/bNy4EevWrSu7rSRJOO6443D44Yejs7MTq1evxu23344nnngiuM1ee+2Fs846C5MnT8arr76Khx9+uOw+DjnkEJx99tn49Kc/HXztIx/5CE466SRsv/32yGazePnll/Gd73wHAHDwwQfjqKOOwrbbbotcLocXXngB1113XcXCjD322APXXHMNZl/9EnabYuK6T80CeqoUAODKp9bhqqfWQVckXLz/NBy1SweihoLXNudw6T/W4J8rUwCA43brxOUHzsBXH3gX3/n4NMzpDOGDNyzFRFPFJR+bht2mhKHJEl7ZmMElf1uNlzdsHRD7wpm7AgDuOGoOAGBlPI/3/3wp/u/IXTHjwK/jOxdfFBzrWWedhR122CGoYLn66qvxzjvvwHVdHHzwwXj77bfx9a9/HbNmzcIZZ5yB3XffHdlsFv/+97+xaNEiJBKJQV+Lhx9+GJ/85Cfx97//HegZanvAAQfg3nvvxUknnVR22/333x9f+tKXMG3aNHR1deHee+/F3XffHXy/vb0d3/rWt/D+978f3d3duOWWW/os7kYiEZx55pn46Ec/Ck3T8Prrr+P666/HW2+9Nab3tBI8z0MulwtCEzFbQtf1oCqldOh1owwAbzap1Nbrp1IzIyoxtLrZq99UVYVlWVBVFdlsNmg/RkRERPXFIIKIiIiIhqXZF6cG89BDD+HQQw8NgohPfvKTeOihh7DnnnuW3e7444/HwQcfjKuvvhqrV6/G7rvvjosvvhjxeBwvvfQSJk2ahO9973u477778MADD2DHHXfEmWeeOehj77333rjsssvw61//GldccQU0TcNee+0VfF9VVdx8881YtWoV2tvb8dWvfhUXXnghLrrookHvdzSeW53GRY+twkX7TsNeNy4FAKQLW8OnKw/eFjtODOG0P72D9SkHn5rbjt8fswP2+9UyvN29tdWJqck4Z+8pOPehlejOFrE57WBWu47fLunCtx5dBUmS8NUPT8Zvj94BH/7lUqQKHg669XW8ce7uOPsvK/C3txNwS7IuVx16l/ghhxyC+++/H1/72teAnsX9//u//8ODDz6IRYsWwTAMfOUrX8F3v/tdnH/++YPe16OPPopjjz0WkydPxsaNG7H//vtj/fr1eOONN8puN3fuXHznO9/BbbfdhsWLF2PX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jSoSiahUKqmtrY3zsheZOnWqjjrqKGlty6GWlhY9+OCD+sMf/tCl4ddtt92mnXfeWZdeeqnmzJlT99zNN9+skSNH6sorr9Ts2bO77JgnnXSSJk+eHHydyWT05ptvasaMGXr++eeDyonf//73Gjx4cIfX//GPf9Rf/vIX7bTTTrrhhhuCx9vb27Vw4ULdfPPNev755/XHP/5RO++88Yv4f/vb33TVVVcF1RKO4ygej+usS76jYw7ao8P2f38zpRPuWNAln0GnVcpaNfwwDZ1/d5fuds6cOXryySe7dJ8AAKB7EUQAAABgk2jN1DdFIhHF43EVCgW1t7f39HK2ieu6isfjMk1T2WxW+Xy+p5eEDXjyySd11VVXyXVdjR07Vueff75KpZJuvfXWLj3OihUrdPTRR9cFEXvttZcGDBjQsHPjrbfe0oUXXihJSiaT+sIXvqArrrhCJ5xwgrLZrMrlsqrVqmbMmKEHHnig7rW1dkqRSESS9O1vf1tvv/22mpqadNxxx+nyyy/X+eefr29961vS2jZNe+yxh77xjW/o9NNPV3t7uyqVSvDeSqVSEMIZhqG8k9TDC1I6d+aiuuMWSz3we9u0lB40WuriIKL2GQIAgL6LIAIAAACbRGumvicWiykajSqXyymbzfb0craaaZqKx+MKhUIqFovKZDKci72Y7/tqbW2VJN13330aN26cDj30UN1666265ppr9MYbb+j6668Ptr/sssuUyWR01VVXBY9Fo1F9+9vf1qGHHqpMJqNbb71V9957b91xHn74YR1//PEaOHCgVq5cKUn6n//5H/3973/Xpz71qbptY7GYvvKVr+iwww6T4zh69dVXdcMNN2jBgvcqBSZOnKjjjjtO4XBYjz76qNra2jq8t3K5HLy31tZWzZgxQ0cffbSGDh2qV199Ndgul8sF262vNv/hnXfe0cKFCyVJ6XRa48aN0y677KKnn346mFNR+7n1fV/VajWoCAqFQnUzKQpmWFXLkVeuqiW78QqhVdMO0AV/W6zxuzfp8BEJLU15OnfmIq3KlXTt/wzX/jtH9VJLXl95YKEWttVf8D95zE668NCdNSBi68E3Uvra3xapvfjez+FJH9xRZx88WMObXS1JebrpPy3697/isr2MJGnPPffUBRdcoBEjRuitt97SH/7whw7rGzt2rM4++2wNGjRI8+fP71DR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0TrjjDP0gQ98QKlUSo8//rh+9atfqVAoSJKam5t18cUX68ADD9Tq1as1Y8aMDusbMmSILr74Yu21115atmyZrrvuurrnBw8erNtvv12nn366FixYEFSpXHjhhTrzzDM1YsQIvfHGG5o+fbqWLFkSvO6kk07ShAkTFAqFNGfOHKVSKR188MHBebjffvtpypQpGjlypMrlshYuXKjLL79cK1as2OhnOXv2bE2YMEHXXXddEIQdffTRevDBBzVp0qS6bXfbbTedc8452meffVQoFPTYY4/p+uuvDz4b0zR11lln6eijj1a5XNasWbNkGEbdPjpzDq//WZ133nnad999Zdu2VqxYoV/84hfbVPEEAAAAYPvFjAgAAPqpfD6vXC6nww47TI7jbHCbs846S5J05ZVXasKECcHXkUhETz75pC688EKdccYZeuqpp3TFFVdo0KBBkqTvfOc7amlp0YwZMzRhwgRNmDBhg/s/5JBDdNlll+nJJ5/UGWecoQsvvLAuCOmMYrEoy7JkWVanX3PAAQdoxIgR+vrXv67LL79chx9+uE4++eQO282aNauuDdLRRx+tWbNmddjuxBNP1Kc+9Sldc801OuWUU3TnnXfqW9/6lvbbbz9J0sCBA3XppZfqiSee0BlnnKGZM2fqzDPP3Ow6DzroIA0aNKjurvjO8kPNkiRD0mc/0KzmsCW/3Nnyha33xdE7anW+pE/+7lX9+pmV+tH44Zrxud301NsZHfnbV/TEi6/rm9/8pkKhUN3rpkyZohtvvFFnnXWW2tradMUVVwTf01133VXTp0/X3Llzddppp+nSSy/V6NGjdd555wWvnzp1qgYNGqSvf/3r+t73vqdjjjlGzc3NwfOGYejSSy9VqVTSV7/6VV1zzTWd+h5I0mmnnRasrVwu11XffOITn9BJJ52km266SVOmTFFLS4v+93//N3jeNE1dfvnlev7553X66afr7LPP1gMPPBBUhGzMa6+9phUrVugjH/mIJGnQoEHab7/99OCDD9ZtFw6HNX36dGUyGZ111ln6/ve/rwMOOEDnn39+sM0JJ5yg8ePHa/r06TrvvPOUSCQ0bty4uv1s7hxe3/nnny/HcXT++efrtNNO0y9/+cseb60FAAAAoO+iIgIAgH6qUqnoqquu0oUXXqj//d//1euvv67nn39ejzzyiN58801pbd9+rW2HtO4d+AsWLNCCBQuCr2+++WYdfvjhOvTQQ3Xvvfeqvb1dlUolGD68MV/60pf0yCOP6Le//W3dvjtryJAh+uxnP6tXXnlliy6C+r6v6dOnq1gsauHChbr55pt11llnacaMGXUXiB966CGdccYZGjx4sLT2rvxLL71UY8aMCbZxHEdf+tKXdNFFF2n+/PmSpOXLl2vffffVZz/7WT3//PM65phjtGzZMt14442SpCVLlmi33XbTiSee2GFtd955Z7BfwzB0880364UXXqjb5sMf/rBmzpxZ99gf//hH/fGPfwy+Pu+kz+usqqGQZcqxDK3Ol/T751d1+jPakKawrUUX1F+Y/veSjL5w53vfs3ktef34X2taV13zxDs675DB7x27UtZ1Lz+j48d/VO973/vqApZbbrlFzzzzjLQ2+Lrjjjt0+OGH69FHH9WJJ56ohx9+OJg38vbbb+vnP/+5rr32Wl1zzTUaPHiwDjnkEJ111ll69dVXJUnTp0/XLbfcEuz/wAMP1PDhw3XJJZdo1ao1n8Ovf/1rTZ8+fbPv+ze/+U1QNXTbbbfpyiuvlOM48n1fn//85zVz5kz97W9/C97Hhz70IUUiEWlt5VE8Hte///1vLVu2TJK0ePHiTn3es2bN0tFHH62HH35YRx11lP797393mIXy8Y9/XK7r6oc//KEKhYIWLlyon/3sZ/rBD36gm266Sa2trTr22GN166236rHHHpMk/eQnP9FBBx0U7KMz5/D6Bg0apLlz5+qtt94KtgcAAACArUUQAQBAPzZ37lw98cQT+uAHP6i9995bBx98sL74xS/q6quv3mjrIK29C3vy5Mk65JBDtOOOO8qyLLmuG1yw76zdd99df/3rX7foNfF4XDNnzpRhGHJdVy+++KJ+9KMfbdE+FixYoGKxGHw9f/58RaNRDRo0qK5dTiqV0r///W+NHz9ehmHo3//+t9LpdN2+hgwZokgk0mENtm3rjTfekCQNHz68Q1VD7YLv+s477zzlcjm5rqs999xT5513ntrb23XfffcF2/z3v//tMES7vb297uvfPPS0ZiyKalAirO8fOVQz/rtSb7UVtS3ai2UdeXN9xUqhVN/maX7Le4FQpSq15kvBY4aqWpFbs/2AAQPqXvfSS+/Nnmhvb9eSJUs0fPhwSdKoUaP0vve9T5/4xCfqXmNZlnbZZRcNGzZMpVJJr732WvDckiVL6j6TESNGqKWlJQghtInvwfrWDcdqrx8wYIBaWlo0bNgw/eUvf6nb/pVXXtH+++8fvJdZs2Zp+vTp+s9//qNnn31Wc+bM0erVqzd73FoQtssuu2j8+PH6+c9/3mGbESNGaMGCBUEbJkmaN2+eLMvSsGHD5Hmedtppp7rzr1Kp6NVXXw3aM3XmHF7fPffco69//es66KCD9Mwzz2ju3LlBgAkAAAAAW4ogAgCAfs73fT3zzDN65pln9Pvf/14XXXSRJk+evMkg4itf+YoOPPBA/eIXv9Dbb7+tYrGo73//+7LtLfunw7phQGdls1mdeeaZqlarWrVqVd3w62q12qH3/ZauaX2zZs0KWgD99Kc/7fB87c73b3zjG1q5cmXdc+sPkO6M5cuXBzMiFi5cqL322ksnnXRSXRBRKBSCu+s3pjVT1Futlt5MlXXKvW/q8dP20nPLc3p1VWGTr9uUSrW62TDDr9S3HKqu91jVXNNuaf3v06ZEIhE98MADQUXEumphQCOtOzukVjGzJeufPn267rnnHh188ME64ogjdOqpp+qiiy7abMutdDqtJ554QhdffLFc19VTTz0VnG9daWvO4ZkzZ+rpp5/WIYccog996EM68cQTdeONN+rPf/5zl68PAAAAQP/HjAgAALYzixYtqrvY6ft+h/kLo0eP1uzZs/X444/rrbfe0urVq7XzzjvXbeP7vkxz0/+UePPNN3XAAQds0fqq1aqWLVum5cuX14UQktTW1tbhTvvdd9+9wz5GjRol13WDr/fee2/lcjm1tLR02Papp56SbduybVtPP/10h+cXLlwoz/M0aNAgLVu2rO5P7aLu4sWLteeee9a9bq+99urU+61UKnVr7bz3KhWWtfv688ut+r8jdt2K/XQto1Le4ON777138Pd4PK6hQ4cGLYxef/11jRgxosPnu2zZMpVKJS1evFi2bWuPPfYI9jFs2DAlEong60WLFmnQoEHaYYcdNnjMrbVkyRJ94AMfqHts/a8l6Y033tCtt96qc889V2+99VaH6o6NmTVrlvbff389+OCDqlQqHZ5ftGiRRo0apXA4HDw2evRolctlLVmyRNlsVu+++27d+WaaZt1n1ZlzeENWrlyp+++/X9/97nd1xx136NOf/nSn3hMAAAAArI+KCAAA+qlkMqnvfve7mjVrlt58803lcjl94AMf0Be/+EX985//DLZ75513dMABB+jFF1+U7/vKZDJaunSpDj/8cP3rX/+SJJ1yyikd7hB/5513tN9++2nOnDnyPK9DSyNJ+t3vfqcf//jHWrZsmR555BFZlqWxY8fq9ttv36r39Nxzz+n888/XF7/4Rc2dO1cHH3ywDj74YOVyubrtHMfRJZdcot///vfaeeedNXnyZP35z3/e4ADhSqWiyZMnB39fXz6f15/+9CedffbZMk1TL774omKxmEaPHq1cLqfZs2frvvvu0/HHH68pU6Zo5syZ2mOPPeqGYK9rwIABcl03aM30yU9+UnPnzu2w/vUDl3K5XPcZm2VfVb33PbnpPyv1+Ol7aczOUT33Tv3n0VmGDA2Kdfzn4cpsSZ0Zg12VIau04VkekyZNUjqd1urVq3X66acrlUrp8ccfl9bOZbj++ut13nnn6a9//asKhYJGjhypAw88UD/72c+0ZMkSPfnkk7rgggt07bXXqlwu6+yzz65rV/TMM89o6dKlmjZtmn75y18qGo3qtNNO26rPYV1//vOfdeGFF+q1117TvHnzdOSRR+p973tfMDNh55131mc+8xn961//0qpVqzRs2DANHTq0w9DpjXnqqad0zDHHdDiHax5++GFNnjxZ06ZN029/+1s1Nzfr3HPP1UMPPRTMZ7n77rs1ceJELV26VIsXL9YJJ5ygeDwe7KMz5/D6zj77bD311FNasmSJEomE9t9//07PvgAAAACA9RFEAADQT+Xzeb388ss6/vjjteuuu8qyLK1cuVIPPPBA3dDjG2+8UV/96lf16U9/Wu+++64mTpyoG264QZdccomuu+46pVIp3X777YrFYnX7v/nmm3XhhRfqj3/8o1zX1ZFHHtlhDc8//7y+//3v68tf/rImTpyoXC7XYTDzlli8eLGuvfZafelLX9KkSZM0d+5c3XHHHfrMZz5Tt92zzz6rpUuX6qc//akcx9Ejjzyi3/3udxvd78YuAtfMmDFDqVRKJ554onbZZRdlMhm9/vrrwefY0tKi7373uzr77LM1YcIEvfzyy/r1r3+tqVOndtjX73//e2ltO6CWlhbdf//9HdY2duxY3XPPPR3e+8knnxx8bRfSkjkw+PrVVQXNeSutaYfvoi/e2fmB4OtKhi29fO4HOzy+189fUEu2tMHX1DEthds33FLqpptu0jnnnKMhQ4ZowYIF+ta3vhW0RHrzzTf1ta99Taeddpp+9rOfyTAMLVu2THPmzAlef9VVV+niiy/Wtddeq9WrV2vGjBk69dRTg+er1ar+7//+TxdffLFuuOEGvfPOO7ruuus6Nax6Ux5++GHtsssuOuuss+S6rh599FHNnj07qIApFosaPny4xo8fr2QyqdWrV+vee+/V/fff3+ljbCjEqykWi7rkkkt0zjnn6Be/+IUKhYIee+wxXX/99cE2d9xxh3bccUdNmzZN1WpVs2bN0uOPP173M7u5c3h9pmnq/PPP18CBA5XNZvX000/XHRMAAAAAtoQxZsyYztzgBgAAgF7Ed+N6+cjv9/QyOth7zndle5meXkZDXX311Vq9erV++MMf9vRSAAAAAKBPYEYEAABAH+R4GdnF9p5eRh27mO53IUQoFNLxxx+vkSNHatiwYZo8ebI+9KEPbXLYOwAAAACgHq2ZAAAA+qhky4taPWSsZFqd2LrBKmUlW+b19Cq6XLVa1dixY/WlL31JrutqyZIl+s53vqNnn322p5cGAAAAAH0GrZkAAAD6qHx8F71+2EU9vYzA+/95tSKZd3p6GQAAAACAXobWTAAAAH1UJLNc0daFUqXSswuplBVtfYsQAgAAAACwQQQRAAAAfdjAhXMks4f/SWdaGrjw0Z5dAwAAAACg1yKIAAAA6MOSLfOUWDFPqpR7ZgGVspIrXuyX8yEAAAAAAF2DIAIAAKAPMyQNnX+XzLInVbu5RVO1IrPsacj8u2R075EBAAAAAH0IQQQAAEAf53jtGvrSHZLRzf+0M0wNfekOOV6me48LAAAAAOhTCCIAAAD6geYVL2iXV+7t1mPu8sq9al7xQrceEwAAAADQ9xBEAAAA9BMDFz32XhjRqDZNa/e768v3auCixxpzDAAAAABAv2L39AIAAADQdQYuekxOIaWl+5ygiuVKptV1O6+UZZY9DX3pDiohAAAAAACdRhABAADQzzSveEGx1re0dO/j1D54tFQpb1sgsfb1yZXzNWT+XcyEAAAAAABsEWPMmDHVnl4EAAAAul5VUnrQaK0ceaRyA0ZueSCxdvto61sauPBRJVvmyWjkggEAAAAA/RJBBAAAwHYgH99Fq4YfqvSg0SqFkmserJRl6L1/ClZlBEGFXUwr2TJPOy7+lyKZ5T21bAAAAABAP0AQAQAAsJ0puXHlkkNVSOyqsh1R1bRkVMqySnmF25cpml4qm/ZLAAAAAIAuQhABAAAAAAAAAAAaxuzpBQAAAAAAAAAAgP6LIAIAAAAAAAAAADQMQQQAAAAAAAAAAGgYgggAAAAAAAAAANAwBBEAAAAAAAAAAKBhCCIAAAAAAAAAAEDDEEQAAAAAAAAAAICGIYgAAAAAAAAAAAANQxABAAAAAAAAAAAahiACAAAAAAAAAAA0DEEEAAAAAAAAAABoGIIIAAAAAAAAAADQMAQRAAAAAAAAAACgYQgiAAAAAAAAAABAwxBEAAAAAAAAAACAhiGIAAAAAAAAAAAADUMQAQAAAAAAAAAAGoYgAgAAAAAAAAAANAxBBAAAAAAAAAAAaBiCCAAAAAAAAAAA0DAEEQAAAAAAAAAAoGEIIgAAAAAAAAAAQMMQRAAAAAAAAAAAgIYhiAAAAAAAAAAAAA1DEAEAAAAAAAAAABqGIAIAAAAAAAAAADQMQQQAAAAAAAAAAGgYgggAAAAAAAAAANAwBBEAAAAAAAAAAKBhCCIAAAAAAAAAAEDDEEQAAAAAAAAAAICGIYgAAAAAAAAAAAANQxABAAAAAAAAAAAahiACAAAAAAAAAAA0DEEEAAAAAAAAAABoGIIIAAAAAAAAAADQMAQRAAAAAAAAAACgYQgiAAAAAAAAAABAwxBEAAAAAAAAAACAhiGIAAAAAAAAAAAADUMQAQAAAAAAAAAAGoYgAgAAAAAAAAAANAxBBAAAAAAAAAAAaBiCCAAAAAAAAAAA0DAEEQAAAAAAAAAAoGEIIgAAAAAAAAAAQMMQRAAAAAAAAAAAgIYhiAAAAAAAAAAAAA1DEAEAAAAAAAAAABrm/wEDCZdZVnYFkgAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 2000x900 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import networkx as nx\n",
    "\n",
    "def plot(graph):\n",
    "    labels = {x: f\"{graph.attribute(x, 'id')}\" for x in graph.scan()}\n",
    "\n",
    "    options = {\n",
    "        \"node_size\": 700,\n",
    "        \"node_color\": \"#0277bd\",\n",
    "        \"edge_color\": \"#454545\",\n",
    "        \"font_color\": \"#efefef\",\n",
    "        \"font_size\": 10,\n",
    "        \"alpha\": 1.0,\n",
    "    }\n",
    "\n",
    "    # Draw graph\n",
    "    fig, ax = plt.subplots(figsize=(20, 9))\n",
    "    pos = nx.spring_layout(graph.backend, seed=0, k=0.9, iterations=50)\n",
    "    nx.draw_networkx(graph.backend, pos=pos, labels=labels, **options)\n",
    "\n",
    "    # Disable axes and draw margins\n",
    "    ax.axis(\"off\")\n",
    "    plt.margins(x=0.15)\n",
    "\n",
    "    # Set background color\n",
    "    ax.set_facecolor(\"#303030\")\n",
    "    fig.set_facecolor(\"#303030\")\n",
    "\n",
    "    plt.show()\n",
    "\n",
    "plot(embeddings.search(\"medical literature\", 10, graph=True))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Explore the data with Agents\n",
    "\n",
    "Our last task will use Agents to explore the dataset. We'll create a method to search the dataset with a vector query and return the matches plus post engagement (impressions, likes, clicks etc). Then we'll hand the keys over the the agent and see what it can do."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "from txtai import Agent\n",
    "\n",
    "def search(query):\n",
    "    \"\"\"\n",
    "    Searches a database of posts. Returns results ordered by most popular\n",
    "\n",
    "    Make sure to call this tool only with a string input, never use JSON.    \n",
    "\n",
    "    Args:\n",
    "        query: concepts to search for using similarity search\n",
    " \n",
    "    Returns:\n",
    "        list of search results with (text, impressions, likes, clicks and post urls) for each match\n",
    "    \"\"\"\n",
    "\n",
    "    return embeddings.search(\n",
    "        \"SELECT text, impressions, likes, clicks, url FROM txtai WHERE similar(:query) ORDER BY impressions DESC\",\n",
    "        10, parameters={\"query\": query}\n",
    "    )\n",
    "\n",
    "def md(output):\n",
    "    display(Markdown(output))\n",
    "\n",
    "agent = Agent(\n",
    "    tools=[search],\n",
    "    llm=llm,\n",
    "    max_iterations=15,\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "First, let's ask the agent to explore ways to increase engagement with future social media posts."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[32;20;1m======== New task ========\u001b[0m\n",
      "\u001b[37;1m\n",
      "Analyze ALL available posts and find the topics discussed in the most popular posts.\n",
      "\n",
      "With those findings, tell me some ideas to write about in my future social media\n",
      "posts in a couple sentences.\n",
      "\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: I will use the tool'search' to analyze the most popular posts and find the topics discussed in them.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: most popular posts\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: I will now extract the topics discussed in the most popular posts.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: txtai, RAG, Embeddings graph database, PubMedBERT, vector databases, semantic search apps, medical literature, Hacker News, GitHub, vector databases, open-source frameworks\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: I will now extract the topics discussed in the most popular posts.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: txtai, RAG, embeddings database, Wikipedia, vector databases, semantic search, LLM orchestration, language model workflows, Graph RAG, ArXiv, medical literature, text to sql, text to speech, RAG Data, multiprocessing, performance enhancements, txtai-wikipedia, vector similarity, path finding queries, txtai-wikipedia index, autonomous agents, retrieval augmented generation, multi-model workflows, default configuration\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: I will now use the extracted topics to generate ideas for future social media posts.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'final_answer' with arguments: Future social media post ideas: 1) Explore the power of Graph RAG and its applications in knowledge graph construction. 2) Discuss the benefits of using txtai's embeddings database for semantic search, LLM orchestration, and language model workflows. 3) Share success stories of using RAG for retrieval augmented generation and its potential in various industries. 4) Introduce the concept of autonomous agents and their potential in multi-model workflows. 5) Highlight the importance of open access to underlying data in a programmatic and platform-independent way.\u001b[0m\n"
     ]
    },
    {
     "data": {
      "text/markdown": [
       "Future social media post ideas: 1) Explore the power of Graph RAG and its applications in knowledge graph construction. 2) Discuss the benefits of using txtai's embeddings database for semantic search, LLM orchestration, and language model workflows. 3) Share success stories of using RAG for retrieval augmented generation and its potential in various industries. 4) Introduce the concept of autonomous agents and their potential in multi-model workflows. 5) Highlight the importance of open access to underlying data in a programmatic and platform-independent way."
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "prompt = \"\"\"\n",
    "Analyze ALL available posts and find the topics discussed in the most popular posts.\n",
    "\n",
    "With those findings, tell me some ideas to write about in my future social media\n",
    "posts in a couple sentences.\n",
    "\"\"\"\n",
    "\n",
    "md(agent(prompt, maxlength=16000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "🚀 Interesting and certainly seems in line with our own previous analysis.\n",
    "\n",
    "Next, let's ask the agent to tell us what it knows about NeuML. This is an example of `Agentic RAG`. It is like standard RAG but it enables an LLM to have multiple passes at the knowledge base before generating the response."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[32;20;1m======== New task ========\u001b[0m\n",
      "\u001b[37;1mWhat would you say NeuML's core competencies are?\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: I will use the tool `search` to find the core competencies of NeuML. The tool can search a database of posts and return results ordered by most popular.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: NeuML core competencies\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: The results from the search tool indicate that NeuML's core competencies include:\n",
      "\n",
      "- Generative knowledge graphs\n",
      "- Micromodels\n",
      "- Cloud offering\n",
      "- Consulting services\n",
      "- Community engagement and training\n",
      "\n",
      "However, it's not clear what NeuML's core competencies are from the search results. Let me try to find more information.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: NeuML core competencies\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: The search results still don't clearly indicate NeuML's core competencies. However, it seems that NeuML is building a sustainable and profitable company from the start and provides consulting services in situations where it's an interesting business problem. It also provides open-source development, advisory and strategic support services (i.e. Fractional CTO), and has a growing number of models available on the Hugging Face hub.\n",
      "\n",
      "Thought: I will try to get a clearer answer by looking at the specific services and products that NeuML offers.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: NeuML services\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: Unfortunately, the search results still don't provide a clear answer to what NeuML's core competencies are. However, it seems that NeuML provides a range of services, including consulting, advisory and strategic support services (i.e. Fractional CTO), open-source development, and more.\n",
      "\n",
      "Thought: Since I couldn't find a clear answer through the search tool, I will try to provide a final answer based on the information available.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'final_answer' with arguments: NeuML provides a range of services, including consulting, advisory and strategic support services (i.e. Fractional CTO), open-source development, and more.\u001b[0m\n"
     ]
    },
    {
     "data": {
      "text/markdown": [
       "NeuML provides a range of services, including consulting, advisory and strategic support services (i.e. Fractional CTO), open-source development, and more."
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "md(agent(\"What would you say NeuML's core competencies are?\", maxlength=16000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Seems about right. Let's keep in mind this is using a database of company posts, so it only knows what the company tells it to know 😂.\n",
    "\n",
    "Next, lets see what the agent believes are the strengths of txtai."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[32;20;1m======== New task ========\u001b[0m\n",
      "\u001b[37;1mTell me about the strengths of txtai\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: I will use the tool `search` to find information about the strengths of txtai.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'search' with arguments: txtai strengths\u001b[0m\n",
      "\u001b[33;1m=== Agent thoughts:\u001b[0m\n",
      "\u001b[0mThought: The strengths of txtai include its ability to automatically create graphs using semantic similarity, as well as its robust integration with Postgres, which allows for the persistence of vectors, sparse vectors, documents, graph edges, and nodes. Additionally, txtai has a growing ease of use, with a well-documented project and reliable, easy-to-use features out of the box. It also supports a variety of integrations, including Agents, RAG, and Vector Search, and has a focus on security with full Postgres integration.\n",
      "\n",
      "Thought: I also noticed that txtai has a focus on depth over breadth, ensuring that integrations are performant and support a large number of the underlying libraries' features. It is also built on the shoulders of open-source giants, such as Transformers, SQLite, NetworkX, Postgres, Faiss, and NumPy, and has a strong commitment to open access to underlying data in a programmatic and platform-independent way.\n",
      "\n",
      "Thought: Now that I have gathered information about the strengths of txtai, I will return the final answer.\u001b[0m\n",
      "\u001b[33;1m>>> Calling tool: 'final_answer' with arguments: {'answer': \"txtai's strengths include its ability to automatically create graphs using semantic similarity, robust integration with Postgres, ease of use, variety of integrations, focus on security, focus on depth over breadth, and commitment to open access to underlying data.\"}\u001b[0m\n"
     ]
    },
    {
     "data": {
      "text/markdown": [
       "txtai's strengths include its ability to automatically create graphs using semantic similarity, robust integration with Postgres, ease of use, variety of integrations, focus on security, focus on depth over breadth, and commitment to open access to underlying data."
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "md(agent(\"Tell me about the strengths of txtai\", maxlength=16000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Remember, this is based on what posts received the most impressions. It's a feedback loop with what users on LinkedIn believe is a strength as most engaging posts are prioritized. This is a complex topic as engagement is also driven by what LinkedIn chooses to share in user's feeds, which no one really knows the answer to 😀."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Wrapping up\n",
    "\n",
    "This notebook demonstrated how to use graphs and agents to explore the [NeuML LinkedIn Posts dataset](https://huggingface.co/datasets/neuml/neuml-linkedin-202501). It presented ideas on how to increase future social media engagement by analyzing what's worked in the past. It was very illuminating 💡."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "local",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.21"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
